<?php
def("amicitia/modelo/entidades/","Pareja");
def("amicitia/modelo/ejecucion/","Cupido");
/**
 * Verificador se encarga de aplicar las reglas de integridad que posea a las
 * parejas que se deban verificar.
 * 
 * @author Willy A. Kuster
 */
class Verificador {
	
	private $reglas;
	private $cupido;
	
	public function aplicarReglas(Pareja $pareja) {
		if($this->reglas==null || count($this->reglas)==0)
			return true;
		
		foreach($this->reglas as $regla) {
			if(!$regla->verificar($pareja, $this->cupido->getInteresado(), $this->cupido->getRama(), $this->cupido->getJuego())) return false;
		}
		
		return true;
	}
	
	public function setReglas(array $reglas = null) {
		$this->reglas = $reglas;
	}
	
	public function setCupido(Cupido $cupido) {
		$this->cupido = $cupido;
	}
	
}
?>